FIG. 1 is a block diagram of a network structure of a universal mobile telecommunications system (UMTS). Referring to FIG. 1, the universal mobile telecommunications system (hereinafter, referred to as ‘UMTS’) includes a user equipment 1 (hereinafter, referred to as ‘UE’), a UMTS terrestrial radio access network 2 (hereinafter, referred to as ‘UTRAN’) and a core network 3 (hereinafter, referred to as ‘CN’). The UTRAN 2 includes at least one radio network sub-system 4 (hereinafter, referred to as ‘RNS’) and each RNS includes a radio network controller 5 (hereinafter, referred to as ‘RNC’) and at least one base station 6 (hereinafter, referred to as ‘Node B’) managed by the RNC. The Node B 6 includes at least one cell.
FIG. 2 is an architectural diagram of UMTS radio protocol between a UE 1 and UTRAN 2. Referring to FIG. 2, the radio interface protocol horizontally includes a physical layer, a data link layer and a network layer and the radio interface protocol vertically includes a user plane for data information transfer and a control plane for signaling transfer. The protocol layers in FIG. 2 can be divided into L1 (first layer), L2 (second layer), and L3 (third layer) based on lower three layers of the open system interconnection (OSI) standard model widely known in the communications systems. The radio protocol layers exist as pairs in both the UE 1 and UTRAN 2 to facilitate data transmission in the radio section.
The physical layer as the first layer provides an information transfer service to an upper layer using physical channels. The physical layer is connected to a medium access control (MAC) layer above the physical layer via transport channels through which data are transferred between the medium access control layer and the physical layer. The transport channels are classified as dedicated transport channels and common transport channels according to whether or not a channel is shared. Data is transmitted between different physical layers, and more particularly, between the physical layer of a transmitting side and the physical layer of a receiving side via physical channels.
The medium access control (MAC) layer of the second layer provides services to a radio link control (hereinafter abbreviated RLC) layer above the MAC layer via logical channels. The RLC layer of the second layer supports reliable data transfer and is operative in segmentation and concatenation of RLC service data units (SDUs) sent down from an upper layer.
The MAC layer and the physical layer exchange data via the transport channel. The second layer (L2) includes a MAC layer, a radio link control (RLC) layer, a broadcast/multicast control (BMC) layer and a packet data convergence protocol (PDCP) layer.
The MAC layer handles mapping between logical channels and transport channels and provides allocation of the MAC parameters for allocation and re-allocation of radio resources. The MAC layer is connected to an upper layer, called the radio link control (RLC) layer, via a logical channel.
Various logical channels are provided according to the type of information transmitted. In general, a control channel is used to transmit information of the control plane and a traffic channel is used to transmit information of the user plane.
The MAC layer is connected to the physical layer by transport channels and can be divided into a MAC-b sub-layer, a MAC-d sub-layer, a MAC-c/sh sub-layer, a MAC-hs sub-layer and a MAC-e sublayer. The division of the MAC is according to the type of transport channel being managed.
The MAC-b sub-layer manages a BCH (Broadcast Channel), which is a transport channel handling the broadcasting of system information. The MAC-c/sh sub-layer manages a common transport channel, such as a forward access channel (FACH) or a downlink shared channel (DSCH), which is shared by a plurality of terminals, or in the uplink the Radio Access Channel (RACH). The MAC-d sub-layer manages a dedicated channel (DCH), which is a dedicated transport channel for a specific terminal. The MAC-hs sublayer manages a transport channel HS-DSCH (high speed downlink shared channel) for high speed data transfer to support the high speed data transfer in downlink and uplink. The MAC-e sublayer manages a transport channel E-DCH (enhanced dedicated channel) for uplink data transfer.
The radio link control (hereinafter abbreviated ‘RLC’) layer supports a guarantee of quality of service (hereinafter abbreviated ‘QoS’) of each radio bearer and also controls the transfer of corresponding data. The RLC layer leaves one independent RLC entity at each RB to guarantee intrinsic QoS of the RB. Three RLC modes are provided to support various QoS; a transparent mode (hereinafter abbreviated ‘TM’), an unacknowledged mode (hereinafter abbreviated ‘UM’) and an acknowledged mode (hereinafter abbreviated ‘AM’).
The RLC also facilitates adjusting a data size to enable a lower layer to transfer data to a radio section. To facilitate an adjusted data size, the RLC segments and concatenates data received from an upper layer.
The PDCP layer is located above the RLC layer and facilitates transferring data using IP packets, such as IPv4 or IPv6, efficiently in a radio section having a relatively small bandwidth. Toward this end, the PDCP layer performs header compression, a function by which mandatory data header information is transferred to increase transport efficiency in a radio section.
Since header compression is a basic function of the PDCP layer, the PDCP layer exists only in a packet service domain (hereinafter abbreviated ‘PS domain’). Furthermore, one PDCP entity exists for each RB in order to provide an effective header compression function to each PS service.
The BMC (broadcast/multicast control) layer is located above the RLC layer. The BMC layer schedules a cell broadcast message and performs broadcasting to UEs located in a specific cell.
A radio resource control (RRC) layer located on the lowest part of the third layer is defined in the control plane only and controls the logical channels, the transport channels, and the physical channels with configuration, reconfiguration, and release of radio bearers (RBs). A RB is a logical path provided by the first and second layers for the data transfer between the UE 1 and the UTRAN 2. Generally, configuring an RB refers to defining the characteristics of protocol layers and channels necessary for providing a specific service and is to establish respective specific parameters and operational methods for them.
Basic functions of the RLC layer are to guarantee QoS of each RB and a corresponding data transfer. Since an RB service is a service that the second layer provides to an upper layer, the entire second layer affects QoS. However, the RLC layer has the greatest effect on QoS.
The RLC layer provides an independent RLC entity at each RB to guarantee the intrinsic QoS of an RB and provides three modes, specifically TM, UM and AM. Since the three RLC modes differ from one another in the supported QoS, their operational methods are different as well as their detailed functions. Therefore, the RLC operational mode must be considered.
TM RLC is a mode in which no overhead is attached to an RLC service data unit (hereinafter abbreviated ‘SDU’) that is delivered from a higher layer in configuring an RLC protocol data unit (hereinafter abbreviated ‘PDU’). Since the RLC transmits the SDU transparently, it is called TM RLC.
Due to these transparent characteristics, the TM RLC plays various roles in user and control planes. In the user plane, the TM RLC performs real-time circuit data transfer, such as voice or streaming data, in a circuit service domain (hereinafter abbreviated ‘CS domain’) since data processing time within RLC is short. In the control plane, the RLC controls uplink transmission of RRC messages from an unspecific UE or downlink transmission of RRC messages broadcast from all UEs with a cell since there is no overhead within the RLC.
Unlike the transparent mode, a non-transparent mode is a mode in which overhead is added in the RLC. Non-transparent modes are classified into an unacknowledged mode (UM), having no acknowledgement for the transmitted data, and an acknowledged mode (AM), having acknowledgement for the transmitted data.
By attaching a PDU header including a sequence number (hereinafter abbreviated ‘SN’) to each PDU, UM RLC enables a receiving side to determine which PDU is lost in the course of transmission. Due to this characteristic, the UM RLC primarily performs transmission of real-time packet data, such as broadcast/multicast data transmission, voice of PS domain, (such as, VoIP) and streaming data in the user plane or transmission of RRC messages transmitted to a specific UE or specific UE group within a cell in control plane that require no acknowledgement.
AM RLC is a non-transparent mode that configures PDUs by attaching a PDU header, including an SN, as in UM RLC. However, AM RLC differs from UM RLC in that a receiving side acknowledges the PDUs transmitted by a transmitting side.
The receiving side acknowledges PDU reception in the AM RLC because the transmitting side can request retransmission of a PDU that is not received by the receiving side. The retransmission function is the most outstanding feature of the AM RLC.
An object of the AM RLC is to guarantee error-free data transmission through retransmission. Due to this characteristic, the AM RLC primarily controls transmission of non-real-time packet data, such as TCP/IP of PS domain in the user plane, or transmission of RRC messages transmitted to a specific UE within a cell in control plane for which acknowledgment is mandatory.
TM or UM RLC is used for uni-directional communications, whereas AM RLC is used for bi-directional communications due to the feedback from a receiving side in AM RLC. Since bi-directional communications are primarily used for point-to-point communications, AM RLC uses only a dedicated logical channel. Therefore, one RLC entity includes a transmission or reception structure in TM or UM RLC, whereas a transmitting side and a receiving side exist within one RLC entity in AM RLC.
The complexity of AM RLC is due to the retransmission function. The AM RLC includes a retransmission buffer for retransmission management as well as a transmitting/receiving buffer and performs various functions. The various functions may be related to a transmitting/receiving window for flow control, polling when a transmitting side requests status information from a corresponding RLC entity of a receiving side, status reporting in order that a receiving side may report its buffer status to a corresponding RLC entity of a transmitting side, status PDU for carrying status information and piggybacking by inserting a status PDU in a data PDU to increase data transfer efficiency.
A reset PDU is required in order to request the resetting of all operations and parameters of an AM RLC entity of the other side if an AM RLC entity discovers a critical error during the course of operation. A reset ACK PDU is required for response to the reset PDU.
To support these functions, an AM RLC needs various protocol parameters, status variables and a timer. PDUs used for data transfer control in status information reporting, status PDUs and reset PDUs are called control PDUs and PDUs used for delivery of user data are called data PDUs.
Specifically, PDUs used by an AM RLC may be classified into two types. A first type is a data PDU and a second type is a control PDU. Control PDUs include status PDU, piggybacked status PDUs, reset PDUs and reset ACK PDUs.
As mentioned previously control PDUs are used for a reset procedure. The reset procedure is used in response to an error condition during operation of an AM RLC.
For example, an error condition may result if mutually used sequence numbers are different from each other or a PDU or an SDU transmission fails in excess of a count limit. Through the reset procedure, an AM RLC of a receiving side and an AM RLC of a transmitting side reset environmental variables and then communications are re-enabled.
Once an AM RLC entity, such as an AM RLC of a transmitting side, decides to initiate a reset procedure, a currently used transmitting direction hyper frame number (hereinafter abbreviated ‘HFN’) value is included in a reset PDU and the reset PDU is transmitted to the corresponding AM RLC entity on the other side, such as an AM RLC of a receiving side. The AM RLC of the receiving side, having received the reset PDU, re-establishes an HFN value of its receiving direction and then resets environmental variables, such as a sequence number.
Subsequently, the AM RLC of the receiving side includes its transmitting direction HFN in a reset ACK PDU and then transmits the reset ACK PDU to the AM RLC of the transmitting side. Upon receiving the reset ACK PDU, the AM RLC of the transmitting side re-establishes its receiving direction HFN value and then resets environmental variables.
FIG. 3 illustrates the structure of an AM RLC PDU. As illustrated in FIG. 3, an AM RLC PDU is used when an AM RLC entity attempts to transmit user data or piggybacked status information and a polling bit. A user data portion is configured as an 8-bit integer multiplication and an AM RLC PDU header is constructed with a 2-octet sequence number. The header part of an AM RLC PDU includes a length indicator.
FIG. 4 illustrates the structure of a status PDU. As illustrated in FIG. 4, a status PDU includes different types of SUFIs (super fields). The status PDU size is variable, but is limited to a size of the largest RLC PDU of a logical channel carrying the status PDU.
The SUFI is utilized to identify what type of AM RLC PDU is received at a receiving side or what type of AM RLC PDU is not received at the receiving side. The SUFI consists of three parts that indicate type, length and value.
FIG. 5 illustrates the structure of a piggybacked status PDU. As illustrated in FIG. 5, the structure of a piggybacked status PDU, while similar to that of a status PDU, differs in that a reserved bit (R2) replaces the D/C field. The piggybacked status PDU is inserted if there is sufficient space in an AM RLC PDU. The PDU type value may be fixed at ‘000’.
FIG. 6 illustrates the structure of a reset ACK PDU. As illustrated in FIG. 6, a reset PDU includes a 1-bit sequence number (RSN). A reset ACK PDU is transmitted in response to a received reset PDU by including the RSN contained in the received reset PDU.
The ‘D/C field’ indicates whether a corresponding PDU is a control PDU or a data PDU. The ‘PDU Type’ indicates a type of the control PDU and, specifically, whether a corresponding PDU is a reset PDU or a status PDU. The ‘Sequence Number’ value indicates sequence number information of an AM RLC PDU.
The ‘Polling Bit’ value is set when a request for a status report is made to a receiving side. The ‘Extension bit (E)’ value indicates whether a next octet is a length indicator. The ‘Reserved bit (R1)’ value is used for a reset PDU or a reset ACK PDU and is coded as ‘000’. The ‘Header Extension Bit (HE)’ value indicates whether a next octet is a length indicator or data. The ‘Length Indicator’ value indicates a location of a boundary if a boundary exists between different SDUs within a data part of a PDU. The ‘PAD’ part is a padding area and is not used in an AM RLC PDU.
A method of reducing reception error in an AM RLC entity is explained as follows. Unlike an UM RLC or TM RLC, error-free data transmission is important for an AM RLC.
Specifically, if a receiving side fails to successfully receive an AM RLC PDU transmitted by a transmitting side, the transmitting side keeps transmitting the AM RLC PDUs until they are successfully received. The receiving side informs the transmitting side of reception or failure of the AM RLC PDUs. Included in the information is a status PDU or a piggybacked status PDU.
FIG. 7 is a flowchart illustrating a conventional AM RLC PDU transmitting method according to a first example. As illustrated in FIG. 7, a transmitting side RLC transmits a first AM RLC PDU, a second AM RLC PDU and a third AM RLC PDU.
Assuming that the second AM RLC PDU is lost during transmission, a receiving side RLC is unable to receive the second AM RLC PDU. Therefore, the receiving side RLC determines that the second AM RLC PDU is lost and informs the transmitting side, via a status PDU, that the second AM RLC PDU was not received.
The transmitting side retransmits the second AM RLC PDU in response to the status PDU received from the receiving side. If the receiving side successfully receives the retransmitted second AM RLC PDU, the AM RLC PDU transmitting process is terminated.
As illustrated in FIG. 7, the receiving side transmits the status PDU if an AM RLC PDU is not received, if the transmitting side polls the receiving side AM RLC PDU or if a receiving side transmission interval timer (Timer_Status_periodic) expires. The transmission interval timer (Timer_Status_periodic) is provided to enable the receiving side to send a status PDU periodically and the receiving side transmits the status PDU each time the transmission interval timer (Timer_Status_periodic) expires.
However, the status PDU includes no data, but rather only control information. Unlike an AM RLC PDU, which includes data, the status PDU lowers a real data rate. Therefore, to prevent the status PDU from being sent too frequently, a timer, such as a transmission prohibit interval (Timer_Status_Prohibit) timer, is utilized.
The transmission prohibit interval (Timer_Status_Prohibit) timer is initialized each time the receiving side transmits the status PDU. While the transmission prohibit interval (Timer_Status_Prohibit) timer is active, the receiving side is prevented from transmitting a status PDU.
FIG. 8 is a flowchart illustrating a conventional AM RLC PDU transmitting method according to a second example. As illustrated in FIG. 8, the receiving side determines that a second AM RLC PDU was lost and initiates a transmission interval timer (Timer_Status_periodic) and a transmission prohibit interval timer (Timer_status_Prohibit) while transmitting a status PDU.
Upon receiving a fifth AM RLC PDU, the receiving side determines that a fourth AM RLC PDU was lost. However, since the transmission prohibit interval timer (Timer_status_Prohibit) has not expired, the receiving side does not transmit the status PDU despite having determined that a second PDU was lost.
Also as illustrated in FIG. 8, a re-transmission of the second AM RLC PDU fails as well. However, the receiving side is unable to determine whether the second AM RLC PDU was retransmitted from the transmitting side. The retransmitted second AM RLC PDU may have been lost or the status PDU previously sent by the receiving side to indicate loss at the second AM RLC PDU may have been lost and not delivered to the transmitting side. Therefore, the receiving side again sends the status PDU to the transmitting side to indicate loss of the second AM RLC PDU.
The transmission prohibit interval timer (Timer_Status_prohibit) determines an interval for retransmitting the status PDU. In the previous example, if the transmission prohibit interval timer (Timer_Status_prohibit) expires, the receiving side immediately transmits the status PDU to the transmitting side again.
Since the transmission prohibit interval timer (Timer_Status_prohibit) expires, there is no limitation on the AM RLC transmitting the status PDU. Upon receiving the retransmitted status PDU, the transmitting side retransmits the second AM RLC PDU one again time. Therefore, the receiving side can receive data without error in operation of the AM RLC.
FIG. 9 illustrates a conventional AM RLC PDU transmitting method according to a third example. As illustrated in FIG. 9, it is assumed that there is no transmission prohibit interval timer (Timer_Status_prohibit) and that a transmission interval timer (Timer_Status_periodic) is set to a very short value.
A receiving side again sends a status PDU indicating loss of the second AM RLC PDU before receiving the retransmitted second AM RLC PDU from a transmitting side. Therefore, the transmitting side decides that the retransmitted second AM RLC PDU was also lost in transmission and retransmits the second AM RLC PDU once more. However, if the receiving side successfully receives the first retransmission of the second AM RLC PDU, the second retransmission of the second AM RLC PDU unnecessarily wastes radio resources.
On the other hand, if the transmission interval timer (Timer_Status_periodic) is set to too long a value, a delay before the transmitting side attempts the retransmission is increased. Due to the increased delay, QoS (quality of service) is degraded.
If a value of the transmission interval timer (Timer_Status_periodic) or transmission prohibit interval timer (Timer_status_Prohibit) is set closer to a time required for a transmitting side of a UE to receive a corresponding status response after having sent an AM RLC PDU to a receiving side, system performance can be enhanced. Such a time required for the transmitting to receive a corresponding status response back from the receiving side is called a round-trip time (hereinafter abbreviated ‘RTT’).
In conventional methods, a value of a transmission interval timer (Timer_Status_periodic) or a transmission prohibit interval timer (Timer_status_Prohibit) is determined when a UE and a serving RNC (hereinafter abbreviated ‘SRNC’) first configure a RB and the value is unilaterally selected by the SRNC. However, since the SRNC has no measurement value for data transmission of an AM RLC to a UE, the SRNC is unable to select a correct RTT value. Therefore, the value of the transmission interval timer (Timer_Status_periodic) or transmission prohibit interval timer (Timer_status_Prohibit) cannot be set to a correct value.
Furthermore, since a UE keeps moving between cells and since a processor load of the UE or base station fluctuates, an RTT value varies. Therefore, it is necessary to keep updating the value of the transmission interval timer (Timer_Status_periodic) or transmission prohibit interval timer (Timer_status_Prohibit). However, these values are determined by the RRC of the SRNC and provided to the RRC of a UE and the RRC of the UE informs the RLC of the UE of the values to use.
Moreover, signaling between the RRCs takes a lot of time and the timer values are basic attributes of an RB. Therefore, whenever these values are changed, a complicated RB reconfiguration process is required. As a result, an incorrect value of the transmission interval timer (Timer_Status_periodic) or transmission prohibit interval timer (Timer_status_Prohibit) degrades RLC performance and the conventional signaling using the RRC limits the RLC performance as well.
Therefore, there is a need for a system for controlling data block transmission more efficiently by measuring round trip time (RTT) and setting a timer using the measured RTT. The present invention addresses this and other needs.